Y may be any array. X is a simple integer scalar or vector. The axis specification is optional. If present, K must be a simple integer scalar or 1-element vector. The value of K must be an axis of Y. If absent, the last axis of Y is implied. The form R←X⍀Y implies the first axis. If Y is a scalar, it is treated as a one-element vector.
If Y has length 1 along the Kth (or implied) axis, it is extended along that axis to match the number of positive elements in X. Otherwise, the number of positive elements in X must be the length of the Kth (or implied) axis of Y.
R is composed from the sub-arrays along the Kth axis of Y. If X[I] (an element of X) is the Jth positive element in X, then the Jth sub-array along the Kth axis of Y is replicated X[I] times. If X[I] is negative, then a sub-array of fill elements of Y is replicated |X[I] times and inserted in relative order along the Kth axis of the result. If X[I] is zero, it is treated as the value ¯1. The shape of R is the shape of Y except that the length of the Kth axis is +/1⌈|X.
Examples
0\⍳0 0 1 ¯2 3 ¯4 5\'A' A AAA AAAAA M 1 2 3 4 5 6 1 ¯2 2 0 1\M 1 0 0 2 2 0 3 4 0 0 5 5 0 6 1 0 1⍀M 1 2 3 0 0 0 4 5 6 1 0 1\[1]M 1 2 3 0 0 0 4 5 6 1 ¯2 1\(1 2)(3 4 5) 1 2 0 0 0 0 3 4 5